Desde que recibí la actualización de Monterey 12.3 (aunque no estoy seguro de que esté relacionada), recibo este error cuando intento ejecutar mi código de Python en la terminal:
Estoy usando python 3.10.3, Atom IDE, y ejecuto el código en la terminal a través del paquete atom-python-run (que solía funcionar perfectamente bien). La configuración del paquete es así:
El comando which en la terminal devuelve lo siguiente (lo cual es extraño porque antes devolvería algo a which python ):
Deduzco que el error se produce porque el terminal requiere python en lugar de python3 , pero soy muy nuevo en cualquier codificación y no tengo idea de por qué comenzó ahora y cómo solucionarlo. Nada de esto me ha funcionado:
alias python='python3' (que vi en uno de los hilos aquí).export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" (que encontré aquí )./local/users/ y ejecuté la terminal una vez más.Cualquiera que actualice su macOS a Monterey 12.3 descubrirá que, de repente, ya no tiene el sistema proporcionado por Python 2.
La razón de esto es que Apple eliminó la instalación de python 2 proporcionada por el sistema ( detalles ).
Entonces, una solución alternativa para esto es usar pyenv para instalar python 2.7 (o cualquier otra versión específica que necesite).
pyenv con brew para administrar diferentes versiones de python: brew install pyenvpyenv install --listpyenv install 2.7.18pyenv versionspyenv global 2.7.18eval "$(pyenv init --path)" a ~/.zprofile (o ~/.bash_profile o ~/.zshrc , lo que necesite)OK, después de un par de días intentándolo, esto es lo que me ha funcionado:
$PATH ).python a través de brew en lugar de hacerlo desde el sitio web oficial. Todavía devolvería el error de command not found .echo "alias python=/usr/bin/python3" >> ~/.zshrc en la terminal para alias python con python3 .Problema resuelto.
Por lo que entiendo, no hay más python 2.x preinstalado en macOS a partir de 12.3, de ahí el error. Todavía me parece extraño que atom-python-run llame a python en lugar de python3 a pesar de la configuración.
Si simplemente instaló python3, use python3 como comando en lugar de solo python . En mi caso, primero tuve que instalar pynev a través de brew usando brew install pyenv .
Pero aún después de usar pynev para instalar python 2.7.18 y configurarlo como una versión global usando pyenv global 2.7.18 , todavía me encontré con un error al intentar ejecutar python .
Lo que funcionó para mí (ya que ya tenía instalado python3) es cambiar mi comando para usar python3 en lugar de solo python . Por supuesto, esta no será una solución para todos los que quieran usar python 2.